Advanced encryption standard (AES) encryption has become the industry standard for symmetric encryption and is used in a wide range of data protection applications and scenarios. Three primary mechanisms exist to implement AES encryption on a platform including generic software, hardware accelerators, and software that utilizes specialized instructions (e.g., AES instruction set with new instructions (AES-NI)). These implementation methods have various security, performance, and power implications. Power and performance characteristics will vary by the workload characteristic. One advantage of performing a cryptographic implementation in a hardware accelerator or IP block is that the underlying AES keys are not exposed outside the boundaries of the IP implementation. On software implementations including those based on AES-NI, the underlying encryption keys are subject to greater exposure and generally rely on the operating system protection and integrity to safeguard the keys from both software and hardware attacks.